import 'package:flutter/foundation.dart';

///日志模型
enum LogsMode {
  debug, // 💙 DEBUG
  warning, // 💛 WARNING
  info, // 💚 INFO
  error, // ❤️ ERROR
}

///日志
void flog(dynamic msg, {LogsMode mode = LogsMode.debug}) {
  if (kDebugMode) {
    print(msg);
  }
  // var chain = Chain.current(); // Chain.forTrace(StackTrace.current);
  // // 将 core 和 flutter 包的堆栈合起来（即相关数据只剩其中一条）
  // chain =
  //     chain.foldFrames((frame) => frame.isCore || frame.package == "flutter");
  // // 取出所有信息帧
  // final frames = chain.toTrace().frames;
  // // 找到当前函数的信息帧
  // final idx = frames.indexWhere((element) => element.member == "flog");
  // if (idx == -1 || idx + 1 >= frames.length) {
  //   return;
  // }
  // // 调用当前函数的函数信息帧
  // final frame = frames[idx + 1];
  //
  // var modeStr = "";
  // switch (mode) {
  //   case LogsMode.debug:
  //     modeStr = "💙 ";
  //     break;
  //   case LogsMode.warning:
  //     modeStr = "💛";
  //     break;
  //   case LogsMode.info:
  //     modeStr = "💚 ";
  //     break;
  //   case LogsMode.error:
  //     modeStr = "❤️ ";
  //     break;
  // }
  //
  // log("${DateTime.now()} $modeStr ${frame.uri.toString().split("/").last}(${frame.line}) -> $msg");
}
